Indenting preprocessor directives reduces the code readability, because it make preprocessor directives harder to spot.
Noncompliant code example
void optimal()
{
#if INTEL /* Noncompliant - hard to spot */
specificIntelStuff();
#endif /* Noncompliant - hard to spot */
}
Compliant solution
void optimal()
{
#if INTEL /* Compliant */
specificIntelStuff();
#endif /* Compliant */
}